package com.astrob.TileSource;

import org.osmdroid.tileprovider.MapTile;
import org.osmdroid.tileprovider.tilesource.OnlineTileSourceBase;

/**
 * Created by colin on 2017/10/10.

<provider id="6010" type="0" visible="true" background="-1">
<name>卫星图</name>
<mode>谷歌卫星</mode>
<countries>China</countries>
<url><![CDATA[http://mt{s}.google.cn/vt/lyrs=s&hl=zh-CN&x={x}&y={y}&z={z}]]></url>
<serverPart>0;1;2;3</serverPart>
<zoomPart>{z}-8</zoomPart>
<zoomMin>8</zoomMin>
<zoomMax>28</zoomMax>
<tileSize>256</tileSize>
<attribution><![CDATA[谷歌卫星 Locus群3035043]]></attribution>
<extraHeader><![CDATA[User-Agent#Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1]]></extraHeader>
<extraHeader><![CDATA[Referer#http://maps.google.com/]]></extraHeader>
</provider>
 */

//GoogleMap图源
public class GoogleMapsTileSource extends OnlineTileSourceBase {
    /**
     * @param aName                a human-friendly name for this tile source  自定图源义名字，会在手机外部存储中新建以该名字命名的文件夹，瓦片存储在其中
     * @param aZoomMinLevel        the minimum zoom level this tile source can provide  最小缩放级别
     * @param aZoomMaxLevel        the maximum zoom level this tile source can provide  最大缩放级别
     * @param aTileSizePixels      the tile size in pixels this tile source provides  瓦片质量 （256）
     * @param aImageFilenameEnding the file name extension used when constructing the filename  瓦片格式（jpg[有损压缩率高、不透明]、png[无损、透明]）
     * @param aBaseUrl             the base url(s) of the tile server used when constructing the url to download the tiles  下载瓦片的链接（前缀）
     */
    public GoogleMapsTileSource(String aName, int aZoomMinLevel, int aZoomMaxLevel, int aTileSizePixels,
                                String aImageFilenameEnding, String[] aBaseUrl) {
        super(aName, aZoomMinLevel, aZoomMaxLevel, aTileSizePixels, aImageFilenameEnding, aBaseUrl);
    }

    @Override
    public String getTileURLString(MapTile aTile) {
        return getBaseUrl() + "&x=" + aTile.getX() + "&y=" + aTile.getY() + "&z=" + aTile.getZoomLevel();
    }
}